<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Selection Sort 选择排序</title>
</head>
<body>
	
	<script>
		

		// 选择排序
		// 选择排序算法是一种原址比较排序算法。选择排序大致的思路是找到数据结构中的最小值并将其放在第一位，接着找到第二小的值并将其放在第二位，以此类推。
		// 选择排序的复杂度和冒泡一样，为O（n^2）的算法

		// 来实现一个选择排序
		var array = [8,7,6,5,4,3,2,1];
		var selectionSort = function () {
			var length = array.length;
			var indexMin;
			for(var i = 0; i < length - 1; i++){
				indexMin = i;
				for(var j = i; j < length; j++){
					if(array[indexMin] > array[j]){
						indexMin = j;
					}
				}
				if(i !== indexMin){
					swap(i, indexMin);
				}
			}
		}

		var swap = function(index1, index2){
			var aux = array[index1];
			array[index1] = array[index2];
			array[index2] = aux;
		}

		selectionSort();
		console.log(array);

	</script>	

</body>
</html>